There is an increasing use of global distribution systems such as the Internet for distribution of digital assets including music, film, computer programs, photographs, games and other content. There is also a concurrent increase in the unauthorized copying, or pirating, of digital content causing considerable economic losses to content providers. Effective countermeasures are important to the viability of businesses engaged in the distribution of digital media.
Many types of countermeasures have been developed to prevent or deter the creation and distribution of unauthorized copies of digital media. Some countermeasures, such as encryption, are directed at preventing pirating in the first place, while others try to locate the source of the unauthorized copies. For example, technologies such as digital watermarking and traitor tracing are directed to finding the sources of unauthorized copies. Digital watermarking involves the addition of a unique mark on each copy of distributed digital content. If an unauthorized copy of the watermarked content is found the watermark may be used to identify the pirate.
In general, a digital watermark may be a pseudo-noise pattern representing the identity of the user, which is superimposed on the content to be distributed. Later, when an unauthorized copy is found, the presence of a particular watermark pattern should reveal the identity of the traitor who has compromised the content. A pirate, knowing the existence of the watermark, may attempt to erase the watermark from a copy before distributing illegal copies. To prevent the erasure of watermarks, content providers may distribute the digits of the watermark into locations in the content that are unknown to the user and which are not needed for the intended use of the content. Without knowledge of the location of the watermarks, attempts to erase the watermark may result in the altering of non-watermark bits and possibly rendering the content unusable.
One way that pirates attempt to remove digital watermarks that are located in unknown locations is by colluding attacks, where multiple watermarked copies of content are compared to find locations where they differ. The pirates may then assume that the watermark is located in these positions and erase or replace the bits in these positions. If successful, the result may be the generation of an unauthorized copy that is still usable because the bits needed to operate the content have not been altered, but which no longer contain a meaningful watermark that can be used to find the source of the unauthorized copy. Once such an unauthorized copy of unwatermarked content is made available, virtually unlimited copies may be distributed resulting in serious economic harm to the content owner and distributors.
The design of effective watermarking systems requires a proper balance between a number of factors, including the imperceptibility of the watermark to the user so that the content is not degraded, the ability of the watermark to maintain its integrity under various noise and distortion conditions, the security of the watermark against manipulation or erasure, computational costs in the watermark embedding and extraction process, and the probability of errors. Errors may include false accusations that a legitimate user is a pirate or the inability to detect a colluding attacker.
Given the ability of pirates to use collusion attacks to remove digital watermarks, various methods and systems have been proposed and developed to create digital watermarks that are difficult to alter. Also, methods and systems have been proposed and developed to analyze altered watermarks found in unauthorized copies to detect at least one of the sources. One such technique for digital watermarking has been proposed by Gabor Tardos in “Optimal Probabilistic Fingerprint Codes” in Proceedings of the Symposium on the Theory of Computing (STOC) '03, pages 116-125, 2003, the contents of which are incorporated herein by reference. In this reference (hereinafter referred to as “Tardos”), a digital watermark called a “fingerprint code” is proposed, where individual users are given equivalent copies of content that have slight variations assigned according to a fingerprint code. If a pirate copy of the content is later obtained, it should be possible to detect at least one of the users who leaked the pirate copy, even if multiple users have colluded to construct a pirate copy by mixing the different variations that they have.
The Tardos fingerprint code technique assumes that when a group of colluding attackers analyze multiple copies of the same content and find only a single symbol at a given position in the code, then the attacker will insert that symbol in the code. However, if the attackers observe more than one symbol at a given position in the different copies of the content, they might insert any symbol, including an unreadable symbol, or a symbol they have not seen in the copies. These assumptions are applicable for content protection of things like text documents and software where it is very difficult for the attackers to guess the precise points of variation. In such content once a particular point of variation is identified, it is easy for the attacker guess what all the variations might be. Because attackers have this capability, a binary code is the most reasonable fingerprint code to use for text documents and software.
The fingerprint code as disclosed in Tardos has a length that is proportional to the square of the number of colluding attackers that could be detected. This was a significant improvement over the previous state of the art. Reducing code length is important because longer code lengths impose greater computational and memory burden on systems processing the content. Also, a larger code length may increase the perceptibility of the code and may degrade the quality of the content to the user.
In contrast, there is another set of assumptions that leads to a different type of code, called a “tracing traitors” code. In a tracing traitors code, the attackers are assumed to only be able to generate a symbol they have seen among the copies. This is a reasonable assumption for content like movies and audio, where the variations might be multiple seconds long. One example of a tracing traitors code is used in the Advanced Access Content System used on DVDs. However, fingerprint codes, such as the Tardos fingerprint code, may also be useful with movies if the variations are very small, such as the case where the individual pixels are the points of variation. Another example is the tracing technology defined by the Self-Protecting Digital Content (SPDC) system of Cryptographic Research Incorporated, which implies a fingerprint code.
Accordingly, there is a need for systems and methods for reducing the pirating of digital content by determining the source of unlawful copies. There is also a need for such systems and methods which have reduced fingerprint code length, so that they do no impose undue memory and computational costs, do not degrade the quality of the content and do not increase the perceptibility of the code to the user. In addition, there is a need for such systems and methods which have fingerprint codes which maintain their integrity under various noise and distortion conditions, are secure against manipulation or erasure, and which have a low probability of error.